package com.hzw.saas.api.storage.bo;

import java.io.Serializable;
import java.util.List;
import javax.validation.constraints.NotNull;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * 旧文件同步块信息
 *
 * @author zzl
 * @since 06/24/2021
 */
@Data
public class BaseOriginFileBO implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 对比文件强校验和
     * 用于同步前判断文件是否有变更
     */
    @ApiModelProperty(value = "旧文件强校验和, MD5", hidden = true)
    protected String strongChecksum;

    /**
     * 分块长度，单位: byte
     */
    @ApiModelProperty(value = "分块长度，单位: byte", required = true)
    @NotNull(message = "分块长度不可为空")
    protected Integer blockLength;

    /**
     * 文件对比块列表
     */
    @ApiModelProperty("文件对比块列表")
    protected List<OriginBlockBO> originBlocks;

}
